package com.miplus.ccrm.core.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * 录音明细表
 * @TableName T_RECORDER
 */
@TableName(value ="T_RECORDER")
@Data
public class TRecorder implements Serializable {
    /**
     * 
     */
    @TableId
    private String recorderid;

    /**
     * 
     */
    private String filename;

    /**
     * 
     */
    private String recorderip;

    /**
     * 
     */
    private Integer channelno;

    /**
     * 
     */
    private Date starttime;

    /**
     * 
     */
    private BigDecimal spendtime;

    /**
     * 
     */
    private String available;

    /**
     * 
     */
    private String agentid;

    /**
     * 上载录音文件到文件服务器类型，如XSKY
     */
    private String infotype;

    /**
     * 
     */
    private Date startdate;

    /**
     * 上载录音文件到文件服务器KEY,一般就是文件名
     */
    private String infoid;

    /**
     * 上载录音文件到文件服务器描述，成功或失败原因
     */
    private String infodepart;

    /**
     * 
     */
    private String filepath;

    /**
     * 
     */
    private String note;

    /**
     * 
     */
    private String channeldn;

    /**
     * 
     */
    private String calltype;

    /**
     * 
     */
    private String telno;

    /**
     * 
     */
    private String teldnis;

    /**
     * 
     */
    private String callid;

    /**
     * 
     */
    private String taskmark;

    /**
     * 
     */
    private String agency;

    /**
     * 
     */
    private String centerid;

    /**
     * 
     */
    private String hostname;

    /**
     * 
     */
    private String taskflag;

    /**
     * 上载录音文件到文件服务器时间
     */
    private Date uploaddt;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        TRecorder other = (TRecorder) that;
        return (this.getRecorderid() == null ? other.getRecorderid() == null : this.getRecorderid().equals(other.getRecorderid()))
            && (this.getFilename() == null ? other.getFilename() == null : this.getFilename().equals(other.getFilename()))
            && (this.getRecorderip() == null ? other.getRecorderip() == null : this.getRecorderip().equals(other.getRecorderip()))
            && (this.getChannelno() == null ? other.getChannelno() == null : this.getChannelno().equals(other.getChannelno()))
            && (this.getStarttime() == null ? other.getStarttime() == null : this.getStarttime().equals(other.getStarttime()))
            && (this.getSpendtime() == null ? other.getSpendtime() == null : this.getSpendtime().equals(other.getSpendtime()))
            && (this.getAvailable() == null ? other.getAvailable() == null : this.getAvailable().equals(other.getAvailable()))
            && (this.getAgentid() == null ? other.getAgentid() == null : this.getAgentid().equals(other.getAgentid()))
            && (this.getInfotype() == null ? other.getInfotype() == null : this.getInfotype().equals(other.getInfotype()))
            && (this.getStartdate() == null ? other.getStartdate() == null : this.getStartdate().equals(other.getStartdate()))
            && (this.getInfoid() == null ? other.getInfoid() == null : this.getInfoid().equals(other.getInfoid()))
            && (this.getInfodepart() == null ? other.getInfodepart() == null : this.getInfodepart().equals(other.getInfodepart()))
            && (this.getFilepath() == null ? other.getFilepath() == null : this.getFilepath().equals(other.getFilepath()))
            && (this.getNote() == null ? other.getNote() == null : this.getNote().equals(other.getNote()))
            && (this.getChanneldn() == null ? other.getChanneldn() == null : this.getChanneldn().equals(other.getChanneldn()))
            && (this.getCalltype() == null ? other.getCalltype() == null : this.getCalltype().equals(other.getCalltype()))
            && (this.getTelno() == null ? other.getTelno() == null : this.getTelno().equals(other.getTelno()))
            && (this.getTeldnis() == null ? other.getTeldnis() == null : this.getTeldnis().equals(other.getTeldnis()))
            && (this.getCallid() == null ? other.getCallid() == null : this.getCallid().equals(other.getCallid()))
            && (this.getTaskmark() == null ? other.getTaskmark() == null : this.getTaskmark().equals(other.getTaskmark()))
            && (this.getAgency() == null ? other.getAgency() == null : this.getAgency().equals(other.getAgency()))
            && (this.getCenterid() == null ? other.getCenterid() == null : this.getCenterid().equals(other.getCenterid()))
            && (this.getHostname() == null ? other.getHostname() == null : this.getHostname().equals(other.getHostname()))
            && (this.getTaskflag() == null ? other.getTaskflag() == null : this.getTaskflag().equals(other.getTaskflag()))
            && (this.getUploaddt() == null ? other.getUploaddt() == null : this.getUploaddt().equals(other.getUploaddt()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getRecorderid() == null) ? 0 : getRecorderid().hashCode());
        result = prime * result + ((getFilename() == null) ? 0 : getFilename().hashCode());
        result = prime * result + ((getRecorderip() == null) ? 0 : getRecorderip().hashCode());
        result = prime * result + ((getChannelno() == null) ? 0 : getChannelno().hashCode());
        result = prime * result + ((getStarttime() == null) ? 0 : getStarttime().hashCode());
        result = prime * result + ((getSpendtime() == null) ? 0 : getSpendtime().hashCode());
        result = prime * result + ((getAvailable() == null) ? 0 : getAvailable().hashCode());
        result = prime * result + ((getAgentid() == null) ? 0 : getAgentid().hashCode());
        result = prime * result + ((getInfotype() == null) ? 0 : getInfotype().hashCode());
        result = prime * result + ((getStartdate() == null) ? 0 : getStartdate().hashCode());
        result = prime * result + ((getInfoid() == null) ? 0 : getInfoid().hashCode());
        result = prime * result + ((getInfodepart() == null) ? 0 : getInfodepart().hashCode());
        result = prime * result + ((getFilepath() == null) ? 0 : getFilepath().hashCode());
        result = prime * result + ((getNote() == null) ? 0 : getNote().hashCode());
        result = prime * result + ((getChanneldn() == null) ? 0 : getChanneldn().hashCode());
        result = prime * result + ((getCalltype() == null) ? 0 : getCalltype().hashCode());
        result = prime * result + ((getTelno() == null) ? 0 : getTelno().hashCode());
        result = prime * result + ((getTeldnis() == null) ? 0 : getTeldnis().hashCode());
        result = prime * result + ((getCallid() == null) ? 0 : getCallid().hashCode());
        result = prime * result + ((getTaskmark() == null) ? 0 : getTaskmark().hashCode());
        result = prime * result + ((getAgency() == null) ? 0 : getAgency().hashCode());
        result = prime * result + ((getCenterid() == null) ? 0 : getCenterid().hashCode());
        result = prime * result + ((getHostname() == null) ? 0 : getHostname().hashCode());
        result = prime * result + ((getTaskflag() == null) ? 0 : getTaskflag().hashCode());
        result = prime * result + ((getUploaddt() == null) ? 0 : getUploaddt().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", recorderid=").append(recorderid);
        sb.append(", filename=").append(filename);
        sb.append(", recorderip=").append(recorderip);
        sb.append(", channelno=").append(channelno);
        sb.append(", starttime=").append(starttime);
        sb.append(", spendtime=").append(spendtime);
        sb.append(", available=").append(available);
        sb.append(", agentid=").append(agentid);
        sb.append(", infotype=").append(infotype);
        sb.append(", startdate=").append(startdate);
        sb.append(", infoid=").append(infoid);
        sb.append(", infodepart=").append(infodepart);
        sb.append(", filepath=").append(filepath);
        sb.append(", note=").append(note);
        sb.append(", channeldn=").append(channeldn);
        sb.append(", calltype=").append(calltype);
        sb.append(", telno=").append(telno);
        sb.append(", teldnis=").append(teldnis);
        sb.append(", callid=").append(callid);
        sb.append(", taskmark=").append(taskmark);
        sb.append(", agency=").append(agency);
        sb.append(", centerid=").append(centerid);
        sb.append(", hostname=").append(hostname);
        sb.append(", taskflag=").append(taskflag);
        sb.append(", uploaddt=").append(uploaddt);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}